﻿using Domain.Entities.ToDo;
using FrameworkCore.Attributes;
using System.ComponentModel.DataAnnotations;

namespace AiBLSmartEdu.Module.ToDo.API.DTOs;

#nullable disable

/// <summary>
/// 创建待办
/// </summary>
[Map(typeof(ToDoItem))]
public class ToDoItemCreateInputModel
{
    /// <summary>
    /// 标题
    /// </summary>
    [Required(ErrorMessage = "标题是必填项")]
    public string Title { get; set; }

    /// <summary>
    /// 描述
    /// </summary>
    [Required(ErrorMessage = "描述是必填项")]
    public string Description { get; set; }

    /// <summary>
    /// 任务截止日期
    /// </summary>
    public DateTime? DueDate { get; set; }

    /// <summary>
    /// 任务等级
    /// </summary>
    [Required(ErrorMessage = "任务等级是必填项")]
    public ToDoPriorityType Priority { get; set; }

    /// <summary>
    /// 待办分类
    /// </summary>
    [Required(ErrorMessage = "分类是必填项")]
    public List<long> Categories { get; set; }
}
